昨天已經初步學會使用dropna刪除資料列的用法,
那麼之前也說明過,
在Pandas有維度的概念在,
因此今天要來講解如何刪除含有NaN資料的欄位。
為了避免混亂、方便對照,
範例與昨日的相同。
首先,先建立一個DataFrame
結構的資料,
或是有匯入的資料轉成DataFrame結構也行。
這邊為了方便對照,先印出完整的資料來看。
P.S這裡特別放入np.NaN與空字串的資料
studentsData = {
'studentId': ['001', '002', '003'],
'Name': ['A', 'B', 'C'],
'Height': [175, np.NaN , 164],
'Weight': [80, 45, 75],
'City': ['New York', 'Los Angeles', '']
}
students = pd.DataFrame(studentsData)
print(students)
印出資料如下
studentId Name Height Weight City
0 001 A 175.0 80 New York
1 002 B NaN 45 Los Angeles
2 003 C 164.0 75
這邊要來複習一下axis參數,預設為0,
0代表了列(預設),
1代表了欄,
因此在昨天刪除列資料時可不加上此。
而今天要刪除欄的資料語法,
在資料後加上.dropna(axis=1)
,
axis=1就是必要的,
使用方式如下,
print(students.dropna(axis=1))
印出資料如下,
這裡特別注意到的是含有NaN的欄(Height)的資料已被刪除,
而含有空字串的欄(City)的資料依然存在,
可以知道dropna語法僅會針對NaN資料執行。
studentId Name Weight City
0 001 A 80 New York
1 002 B 45 Los Angeles
2 003 C 75
經過這兩天大家對於dropna語法刪除欄列都有了一定程度的了解,
另外對於axis維度的意義應該也能很好的作運用了,
這些都是很基礎的語法應用,
大家要好好複習喔。